﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x02000FBD RID: 4029
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class RogueRecordAvatar : IMessage<RogueRecordAvatar>, IMessage, IEquatable<RogueRecordAvatar>, IDeepCloneable<RogueRecordAvatar>, IBufferMessage
	{
		// Token: 0x170032FD RID: 13053
		// (get) Token: 0x0600B450 RID: 46160 RVA: 0x001E6961 File Offset: 0x001E4B61
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<RogueRecordAvatar> Parser
		{
			get
			{
				return RogueRecordAvatar._parser;
			}
		}

		// Token: 0x170032FE RID: 13054
		// (get) Token: 0x0600B451 RID: 46161 RVA: 0x001E6968 File Offset: 0x001E4B68
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return RogueRecordAvatarReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x170032FF RID: 13055
		// (get) Token: 0x0600B452 RID: 46162 RVA: 0x001E697A File Offset: 0x001E4B7A
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return RogueRecordAvatar.Descriptor;
			}
		}

		// Token: 0x0600B453 RID: 46163 RVA: 0x001E6981 File Offset: 0x001E4B81
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueRecordAvatar()
		{
		}

		// Token: 0x0600B454 RID: 46164 RVA: 0x001E698C File Offset: 0x001E4B8C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueRecordAvatar(RogueRecordAvatar other) : this()
		{
			this.avatarType_ = other.avatarType_;
			this.level_ = other.level_;
			this.id_ = other.id_;
			this.slot_ = other.slot_;
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600B455 RID: 46165 RVA: 0x001E69E0 File Offset: 0x001E4BE0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueRecordAvatar Clone()
		{
			return new RogueRecordAvatar(this);
		}

		// Token: 0x17003300 RID: 13056
		// (get) Token: 0x0600B456 RID: 46166 RVA: 0x001E69E8 File Offset: 0x001E4BE8
		// (set) Token: 0x0600B457 RID: 46167 RVA: 0x001E69F0 File Offset: 0x001E4BF0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public AvatarType AvatarType
		{
			get
			{
				return this.avatarType_;
			}
			set
			{
				this.avatarType_ = value;
			}
		}

		// Token: 0x17003301 RID: 13057
		// (get) Token: 0x0600B458 RID: 46168 RVA: 0x001E69F9 File Offset: 0x001E4BF9
		// (set) Token: 0x0600B459 RID: 46169 RVA: 0x001E6A01 File Offset: 0x001E4C01
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint Level
		{
			get
			{
				return this.level_;
			}
			set
			{
				this.level_ = value;
			}
		}

		// Token: 0x17003302 RID: 13058
		// (get) Token: 0x0600B45A RID: 46170 RVA: 0x001E6A0A File Offset: 0x001E4C0A
		// (set) Token: 0x0600B45B RID: 46171 RVA: 0x001E6A12 File Offset: 0x001E4C12
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint Id
		{
			get
			{
				return this.id_;
			}
			set
			{
				this.id_ = value;
			}
		}

		// Token: 0x17003303 RID: 13059
		// (get) Token: 0x0600B45C RID: 46172 RVA: 0x001E6A1B File Offset: 0x001E4C1B
		// (set) Token: 0x0600B45D RID: 46173 RVA: 0x001E6A23 File Offset: 0x001E4C23
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint Slot
		{
			get
			{
				return this.slot_;
			}
			set
			{
				this.slot_ = value;
			}
		}

		// Token: 0x0600B45E RID: 46174 RVA: 0x001E6A2C File Offset: 0x001E4C2C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as RogueRecordAvatar);
		}

		// Token: 0x0600B45F RID: 46175 RVA: 0x001E6A3C File Offset: 0x001E4C3C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(RogueRecordAvatar other)
		{
			return other != null && (other == this || (this.AvatarType == other.AvatarType && this.Level == other.Level && this.Id == other.Id && this.Slot == other.Slot && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600B460 RID: 46176 RVA: 0x001E6AA8 File Offset: 0x001E4CA8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.AvatarType != AvatarType.None)
			{
				num ^= this.AvatarType.GetHashCode();
			}
			if (this.Level != 0U)
			{
				num ^= this.Level.GetHashCode();
			}
			if (this.Id != 0U)
			{
				num ^= this.Id.GetHashCode();
			}
			if (this.Slot != 0U)
			{
				num ^= this.Slot.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600B461 RID: 46177 RVA: 0x001E6B38 File Offset: 0x001E4D38
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600B462 RID: 46178 RVA: 0x001E6B40 File Offset: 0x001E4D40
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600B463 RID: 46179 RVA: 0x001E6B4C File Offset: 0x001E4D4C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.Level != 0U)
			{
				output.WriteRawTag(24);
				output.WriteUInt32(this.Level);
			}
			if (this.AvatarType != AvatarType.None)
			{
				output.WriteRawTag(40);
				output.WriteEnum((int)this.AvatarType);
			}
			if (this.Slot != 0U)
			{
				output.WriteRawTag(56);
				output.WriteUInt32(this.Slot);
			}
			if (this.Id != 0U)
			{
				output.WriteRawTag(96);
				output.WriteUInt32(this.Id);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600B464 RID: 46180 RVA: 0x001E6BE0 File Offset: 0x001E4DE0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.AvatarType != AvatarType.None)
			{
				num += 1 + CodedOutputStream.ComputeEnumSize((int)this.AvatarType);
			}
			if (this.Level != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.Level);
			}
			if (this.Id != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.Id);
			}
			if (this.Slot != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.Slot);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600B465 RID: 46181 RVA: 0x001E6C68 File Offset: 0x001E4E68
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(RogueRecordAvatar other)
		{
			if (other == null)
			{
				return;
			}
			if (other.AvatarType != AvatarType.None)
			{
				this.AvatarType = other.AvatarType;
			}
			if (other.Level != 0U)
			{
				this.Level = other.Level;
			}
			if (other.Id != 0U)
			{
				this.Id = other.Id;
			}
			if (other.Slot != 0U)
			{
				this.Slot = other.Slot;
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600B466 RID: 46182 RVA: 0x001E6CE0 File Offset: 0x001E4EE0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600B467 RID: 46183 RVA: 0x001E6CEC File Offset: 0x001E4EEC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num <= 40U)
				{
					if (num == 24U)
					{
						this.Level = input.ReadUInt32();
						continue;
					}
					if (num == 40U)
					{
						this.AvatarType = (AvatarType)input.ReadEnum();
						continue;
					}
				}
				else
				{
					if (num == 56U)
					{
						this.Slot = input.ReadUInt32();
						continue;
					}
					if (num == 96U)
					{
						this.Id = input.ReadUInt32();
						continue;
					}
				}
				this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
			}
		}

		// Token: 0x040048DA RID: 18650
		private static readonly MessageParser<RogueRecordAvatar> _parser = new MessageParser<RogueRecordAvatar>(() => new RogueRecordAvatar());

		// Token: 0x040048DB RID: 18651
		private UnknownFieldSet _unknownFields;

		// Token: 0x040048DC RID: 18652
		public const int AvatarTypeFieldNumber = 5;

		// Token: 0x040048DD RID: 18653
		private AvatarType avatarType_;

		// Token: 0x040048DE RID: 18654
		public const int LevelFieldNumber = 3;

		// Token: 0x040048DF RID: 18655
		private uint level_;

		// Token: 0x040048E0 RID: 18656
		public const int IdFieldNumber = 12;

		// Token: 0x040048E1 RID: 18657
		private uint id_;

		// Token: 0x040048E2 RID: 18658
		public const int SlotFieldNumber = 7;

		// Token: 0x040048E3 RID: 18659
		private uint slot_;
	}
}
